package com.itheima.d7_jdk8_time;

import java.time.LocalDate;

public class Test1_LocalDate {
    public static void main(String[] args) {
        // 0、获取本地日期对象(不可变对象)
        LocalDate ld = LocalDate.now(); // 年 月 日
        System.out.println(ld);

        // 1、获取日期对象中的信息
        int year = ld.getYear(); // 年
        int month = ld.getMonthValue(); // 月(1-12)
        int day = ld.getDayOfMonth(); // 日
        int dayOfYear = ld.getDayOfYear();  // 一年中的第几天
        int dayOfWeek = ld.getDayOfWeek().getValue(); // 星期几
        System.out.println(year);
        System.out.println(day);
        System.out.println(dayOfWeek);

        //基于指定的乃年月日获取时间对象
        LocalDate localDate = LocalDate.of(2022, 10, 10);
        //  localDate


        // 2、直接修改某个信息: withYear、withMonth、withDayOfMonth、withDayOfYear
        // 注意 : JDK8开始的日期类,是不可改变的
        LocalDate localDate1 = localDate.withYear(2023);
        // 3、把某个信息加多少: plusYears、plusMonths、plusDays、plusWeeks
        LocalDate localDate2 = localDate.plusMonths(2);
        System.out.println("--2--\n"+localDate2);
        // 4、把某个信息减多少：minusYears、minusMonths、minusDays、minusWeeks
        LocalDate localDate3 = localDate.minusDays(20);
        System.out.println("--3--\n" +localDate3);
        // 5、获取指定日期的LocalDate对象： public static LocalDate of(int year, int month, int dayOfMonth)

        // 6、判断2个日期对象，是否相等，在前还是在后： equals isBefore isAfter
    if (localDate1.equals(localDate2)){
        System.out.println("相同时间");
    }else {
        System.out.println("不相同时间");
    }
    //判断：2023-10-10子啊2023-02-10之前
        if (localDate1.isAfter(localDate2)){
            System.out.println("true");
        }else {
            System.out.println("false");
        }

    }
}
